Traffic arbitration

ABSTRACT

The invention provides an arbitration method and an arbiter circuit by which equal arbitration of output cells can be achieved with a comparatively simple configuration even where a very great number of queues are involved. The arbiter circuit includes a plurality of queues for storing output cells, and a plurality of round robins for successively providing the right of outputting output cells to the queues. The round robins are arranged in a multi-stage tree link configuration, and the queues are distributed under those of the round robins which are in the lowest order stage. Each of the round robins in the lowest order stage has a rate information holding function of holding rate information representative of a rate of cells inputted thereto. Meanwhile, each of the round robins in the higher order stage or stages has a rate information holding function of holding rate information regarding those of the round robins which are subordinate to the round robin and a subordinate selection function of selecting one of the subordinate round robins based on the rate information of the subordinate round robins. A queue is added as a subordinate to the selected round robin in the lowest order stage when a connection is to be added newly.

BACKGROUND OF THE INVENTION

1. Field of the Invention

This invention relates to queuing for each virtual channel (VC) in anasynchronous transfer mode (ATM) exchange, and more particularly to anArbitration method for output cells of an ATM and an arbiter circuit.

2. Description of the Related Art

Conventionally, an ATM exchange adopts a method of storing cells of eachvirtual channel into an individual queue (per-VC queuing) in order toachieve fine traffic control.

The per-VC queuing method is used also for VC merging and so forth whenMPLS (Multi-Protocol Label Switching) is incorporated in an ATMexchange.

Such queuing for each virtual channel of an ATM exchange as describedabove is disclosed, for example, in Japanese Patent Laid-Open Nos.224364/1998 and 191774/1999 and Japanese Patent No. 2797989. JapanesePatent No. 2797989 discloses a cell traffic shaper which queues cellsinto a cell buffer for each logically multiplexed connection orconnection group and controls the output cell rate from each queue usinga plurality of timers. When a first cell is stored into a queue, acorresponding timer is assigned to the queue and set, and if the queuebecomes empty, then the setting of the timer is cancelled so that thetimer is released from the queue.

However, while use of the “per-VC queuing” method makes traffic controlfor each VC possible, there is the possibility that a very great numberof queues such as several tens thousands queues may be involved.

This gives rise to a problem that a long processing time for arbitrationis required for the output and processing may not be completed within afixed period of time.

SUMMARY OF THE INVENTION

It is an object of the present invention to provide an arbitrationmethod and an arbiter circuit by which equal arbitration of output cellscan be achieved with a comparatively simple configuration even where avery great number of queues are involved.

Generally, arbitration methods are divided into (a) a method wherein thedegrees of priority are determined fixedly (statically) among differentservice classes and (b) another method wherein cells are outputtedequally within the same service class.

In the arbitration method (a) described above, the degrees of priorityamong different service classes are fixed, and while cells of thehighest degree of priority remain stored, cells of a lower degree ofpriority are not outputted at all. This makes it possible to assure thedelay characteristic of cells of the highest degree of priority.

In the arbitration method (b), it is required that cells be outputtedequally from all queues. Usually, a round robin is used to make itpossible to provide the right of outputting cells successively todifferent queues and assign the right to a next queue if no cell isstored in the pertaining queue. However, where the “per-VC queuing” isused, there is the possibility that the number of queues of the sameservice class may reach several tens thousands and time required fornecessary processing may not be assured.

This problem can be solved if a time wheel can be used to dynamicallycontrol the band in place of a round robin. In this instance, however,complicated closed loop control for the entire system including theinput side is required.

According to the present invention, the equality among different queueswhere a great number queues are involved in the arbitration method (b)in the same service class is assured by a simple method which uses around robin without using a closed loop of an entire system includinginputs and outputs.

However, where a round robin is used, if it is assumed that cells fromqueues of comparatively high input cell rates are inputted in aconcentrated manner to a first round robin while cells from a queue of ahigh input cell rate and other queues of very low input rates areinputted to a second round robin, then if the sum total of input ratesexceed the output rate because of congestion, then although the inputrate is equal, the output rate of the queues of the second round robinbecomes higher than that of the queues of the first round robin.Consequently, the equality in output among the queues is lost.

Therefore, in order to eliminate the problem just described, accordingto the present invention, the input rates to different round robins areadjusted so as to be equal to one another.

In particular, in order to attain the object described above, accordingto an aspect of the present invention, there is provided an arbitrationmethod for output cells of an ATM, comprising the steps of causing eachof a plurality of round robins, which are arranged in a multi-stage treelink configuration and successively provide the right of outputtingoutput cells to a plurality of queues which store output cells, to haverate information representative of a rate of cells inputted to the roundrobin, and successively selecting, based on the rate information of theround robins, a round robin in each of the stages from the highest orderstage to the lowest order stage to determine that one of the roundrobins in the lowest order stage to which a queue is to be arranged.

According to another aspect of the present invention, there is providedan arbiter circuit for output cells of an ATM, comprising a plurality ofqueues for storing output cells, and a plurality of round robins forsuccessively providing the right of outputting output cells to thequeues., the round robins being arranged in a multi-stage tree linkconfiguration, the queues being distributed under those of the roundrobins which are in the lowest order stage, each of the round robins inthe lowest order stage having a rate information holding function ofholding rate information representative of a rate of cells inputtedthereto, each of the round robins in the higher order stage or stageshaving a rate information holding function of holding rate informationregarding those of the round robins which are subordinate to the roundrobin and a subordinate selection function of selecting one of thesubordinate round robins based on the rate information of thesubordinate round robins, a queue being added as a subordinate to theselected round robin in the lowest order stage when a connection is tobe added newly.

In both of the arbitration method and the arbiter circuit, preferably around robin having the lowest rate is successively selected from amongthe round robins of each of the stages from the highest order stage tothe lowest order stage and a queue is added as a subordinate to theselected round robin in the lowest order stage.

The rate information of each of the selected round robins may be updatedin response to a variation of the rate caused by the added queue.

Preferably, each of those of the round robins which have subordinateround robins has identification information indicative of those of thesubordinate round robins which have the lowest rate and the secondlowest rate, and after the rate information with regard to thesubordinate round robin having the lowest rate is updated in response toa variation of the rate caused by the added queue, the updated rate iscompared to determine whether or not it is necessary to update theidentification information.

The rate information may be produced based on information applied when aconnection is established.

If a connection is deleted with regard to a queue, then the rateinformation in each of those of the round robins which are successivelylinked to the queue may be successively updated from the lowest orderstage round robin to the highest order stage round robin in accordancewith a rate of the deleted queue.

Preferably, each of those of the round robins which have subordinateround robins has identification information indicative of those of thesubordinate round robins which have the lowest rate and the secondlowest rate, and after the rate information with regard to thesubordinate round robin having the lowest rate is updated in response toa variation of the rate caused by the deleted queue, the updated rate iscompared to determine whether or not it is necessary to update theidentification information.

With the arbitration method and the arbiter circuit, since themulti-stage arrangement of round robins and the averaging of thetraffics to the round robins are used, even if a very great number ofqueues are involved in “per-VC queuing”, equal arbitration can beachieved. Further, due to the averaging of the traffics, the advantagejust described above can be anticipated also upon congestion.Furthermore, the advantage described can be obtained with acomparatively simple configuration without using a combination of theclosed loop control of the entire apparatus and the time wheel.

The above and other objects, features and advantages of the presentinvention will become apparent from the following description and theappended claims, taken in conjunction with the accompanying drawings inwhich like parts or elements are denoted by like reference symbols.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram showing a configuration of an arbiter circuitto which the present invention can be applied;

FIG. 2 is a similar view but illustrating a problem which occurs whenthe arbiter circuit of FIG. 1 temporarily suffers from trafficcongestion;

FIG. 3 is a similar view but showing a configuration of an arbitercircuit to which the present invention is applied;

FIG. 4 is a table illustrating information possessed by each round robinshown in FIG. 3;

FIG. 5 is a similar view but illustrating information possessed by eachround robin shown in FIG. 3 after a connection is added;

FIG. 6 is a similar view but illustrating information possessed by eachround robin shown in FIG. 3 after a connection is deleted; and

FIGS. 7 and 8 are flow charts illustrating an information updatingprocess of the arbiter circuit of FIG. 3 after addition or deletion of aconnection.

DESCRIPTION OF THE PREFERRED EMBODIMENT

Referring first to FIG. 1, there is shown a configuration of an arbitercircuit to which the present invention can be applied. The arbitercircuit shown includes a plurality of round robins (RR) 1 and 2-1 to 2-kconnected in a tree link configuration of a plurality of stages and eachhaving a number of inputs connected thereto such that the round robincan process the inputs sufficiently within a required period of time.

In particular, the round robins 2-1 to 2-k are disposed as subordinatesto the round robin 1 of the highest order stage, and queues 41-1 to41-k, 42-1 to 42-k, . . . , and 4 k-1 to 4 k-k are disposed assubordinates to the round robins 2-1 to 2-k of the lowest order.

With the configuration described, the right for outputting cells can beprovided equally to the queues 41-1 to 41-k, 42-1 to 42-k, . . . , and 4k-1 to 4 k-k which input cells to the round robins 2-1 to 2-k. However,if congestion occurs, then there is the possibility that the equalityamong the queues 41-1 to 41-k, 42-1 to 42-k, . . . , and 4 k-1 to 4 k-kmay be lost.

FIG. 2 illustrates a problem when congestion temporarily occurs with theconfiguration of the arbiter circuit shown in FIG. 1. Referring to FIG.2, it is assumed that cells from the queues 41-1 to 41-3 of acomparatively high input cell rate are inputted in a concentrated mannerto the round robin 2-1 while cells from the queue 42-1 of a high inputcell rate (equal to that of the queues 41-1 to 41-3) and cells from thequeues 42-2 to 42-3 of different very low cell rates are inputted to theround robin 2-2.

If the total cell rate becomes higher than the input cell rate as aresult of congestion, then the output rate of queue 42-1 becomes higherthan that of the queues 41-1 to 41-3 although the input rate is equal,resulting in loss of the equality in output among the queues 42-1 to42-3.

In order to overcome the problem just described, or in other words, inorder to adjust the input rates to the individual round robins so as tobe equal to one another, the arbiter circuit according to the presentinvention provides each round robin with rate information representativeof the rate of cells inputted thereto, successively selects, based onthe rate information of the round robins, a round robin in each of thestages from the highest order stage to the lowest order stage, and addsa queue as a subordinate to the selected one of the round robins whichis in the lowest order stage.

Further, the arbiter circuit provides each of those of the round robinswhich have subordinate round robins with identification informationindicative of those of the subordinate round robins which have thelowest rate and the second lowest rate, and compares, after the rateinformation with regard to the subordinate round robin having the lowestrate is updated in response to a variation of the rate caused by theadded queue, the updated rate to determine whether or not it isnecessary to update the identification information. The rate informationand the identification information are produced based on informationapplied when a connection is established.

When a connection is to be established newly, that one of thesubordinate round robins to the highest order stage round robin whichhas the lowest input rate is selected based on information of thehighest order stage round robin. Then, based on the informationpossessed by the selected round robin, that one of the round robinssubordinate to the selected round robin which has the lowest input rateis selected.

By repeating such selection of a round robin up to the last stage andarranging a queue as a subordinate to the selected round robin in thelast stage, queues are arranged so that the rates of cells inputted tothe individual round robins may become as equal as possible.

Now, an arbiter circuit to which the present invention is applied isdescribed in detail with reference to FIGS. 3 to 8.

In the following description, it is assumed that, for simplifiedillustration and description, the number of stages of round robins is 3and the highest order stage round robin is denoted by reference numeral1. Further, round robins 2-1 to 2-4 are arranged as subordinates to theround robin 1, and round robins 3-1 to 3-3 are arranged under the roundrobin 2-1. It is to be noted that round robins under the round robins2-2 to 2-4 are omitted in FIG. 3.

Meanwhile, queues for storing cells of individual virtual channels (VCs)are arranged as subordinates to the round robins 3-1 to 3-3 in thelowest order stage, and the virtual channels have such cell rates asillustrated in FIG. 3. In particular, the rates of the queues 41-1 to41-3 are 2, 4 and 6 Mbps, respectively, and therefore, the total rate ofthe round robin 3-1 is 12 Mbps.

Meanwhile, the rates of the queues 42-1 to 42-3 are 20, 11, 8 Mbps,respectively, and therefore, the total rate of the round robin 3-2 is 39Mbps. The rates of the queues 43-1 to 43-3 are 14, 7 and 6 Mbps,respectively, and therefore, the total rate of the round robin 3-3 is 27Mbps.

Each of the round robins 1, 2-1 to 2-4 and 3-1 to 3-3 has information ofan input cell rate and those ones of the round robins subordinate to theround robin which have the lowest rate and the second lowest rate asseen from FIG. 4.

Now, operation of the arbiter circuit of FIG. 3 after addition ordeletion of a connection and updating of information of the round robin1, 2-1 to 2-4, and 3-1 to 3-3 are described with reference to FIGS. 3 to8.

When a connection of the rate of 5 Mbps is to be added (step S1 of FIG.7), that one of the round robins subordinate to the round robin 1 of thehighest order stage which has the lowest rate is searched for (step S2of FIG. 7). Then, it is discriminated whether or not the round robinsearched out by the search has robins subordinate thereto (step S3 ofFIG. 7). If robins subordinate to the searched out round robin aredetected, then the processing advances to step S4 of FIG. 7, but inanother other case, the processing advances to step S6 of FIG. 7.

In the case described above, the round robin 2-1 is searched out, andthe thus searched out round robin 2-1 has the round robins 3-1 to 3-3subordinate thereto as seen in FIG. 4. Therefore, that one of the roundrobins subordinate to the round robin 2-1 which has the lowest rate issearched for (step S4 of FIG. 7). Then, it is discriminated whether ornot the round robin searched out by the search has round robinssubordinate thereto (step S5 of FIG. 7). If round robins subordinate tothe searched out round robin are detected, then the processing advancesto step S4 of FIG. 7, but in another other case, the processing advancesto step S6 of FIG. 7.

In this instance, the round robin 3-1 is searched out. However, sincethe round robin 3-1 does not have round robins subordinate thereto asseen in FIG. 4, a queue 41-4 (not shown) is added as a subordinate tothe round robin 3-1 so that cells of the new connection can be stored(step SG of FIG. 7).

After the queue 41-4 is added, the information of the round robin 3-1 isupdated (step S7 of FIG. 7). In this instance, the information of theround robin 3-1 changes to 17 Mbps by addition of the cell rate of 5Mbps added newly to the cell rate of 12 Mbps at present (refer to FIG.5).

Then, the information of the round robin 2-1 of the immediately higherorder stage to the round robin 3-1 is updated (step S8 of FIG. 7). Inthis instance, the information of the round robin 2-1 is updated afterthe information updated in step S6 is compared with the cell rate of 27Mbps of the round robin 3-3 which has the second lower rate among thesubordinate round robins to the round robin 2-1.

Since the comparison reveals that the information of the round robin 3-1(updated to 17 Mbps) is lower than the cell rate of the round robin 3-3(27 Mbps), the round robin of the lowest rate and the round robin of thesecond lowest rate in the information of the round robin 2-1 are notchanged. Meanwhile, the cell rate of the information of the round robin2-1 changes to 83 Mbps by addition of the added cell rate of 5 Mbps tothe current cell rate of 78 Mbps (refer to FIG. 5).

Thereafter, it is determined whether or not the round robin in theimmediately higher order stage to the round robin whose information hasbeen updated is the highest order stage round robin (step S9 of FIG. 7).If the round robin in the immediately higher order stage is not thehighest order stage round robin, then the processing returns to step S8,but if the round robin in the immediately higher order stage is thehighest order stage round robin, then the processing advances to stepS10.

In this instance, since the round robin 1 in the immediately higherorder stage to the round robin 2-1 whose information has been updated isthe highest order stage round robin, the information of the round robin1 is updated (step S10 of FIG. 7). In this instance, the information isupdated after the information updated in step S8 is compared with thecell rate of 80 Mbps of the round robin 2-4 which has the second lowestrate among the round robins subordinate to the round robin 1.

Since the comparison reveals that the cell rate of the round robin 2-1(updated to the 83 Mbps) is higher than the cell rate of the round robin2-4 (80 Mbps), the information of all of the round robins 2-1 to 2-4subordinate to the round robin 1 is referred to and the round robin ofthe lowest rate is updated to the round robin 2-4 while the round robinof the second lowest rate is updated to the round robin 2-1. Further, inthe information of the round robin 1, the cell rate is updated to 430Mbps by addition of the added cell rate of 5 Mbps to the cell rate of425 Mbps at present. The information of the round robins 1, 2-1 to 2-4and 3-1 to 3-3 after such addition of the new connection is completed asdescribed above is illustrated in FIG. 5.

On the other hand, if the connection of the queue 42-1 is to be deleted(step S1 of FIG. 7), then the information of the round robin 3-2connecting to the deleted queue is updated (step S11 of FIG. 8). In theinformation of the round robin 3-2, the cell rate is updated to 19 Mbpsby subtraction of the rate of 20 Mbps of the queue 42-1 from the cellrate of 39 Mbps at present.

Then, the information of the round robin 2-1 in the immediately higherorder stage to the round robin 3-2 is updated (step S12 of FIG. 8). Inthis instance, the information is updated after the rate updated in stepS11 is compared with the rate of 12 Mbps of the round robin 3-1 whichhas the lowest rate among the round robins subordinate to the roundrobin 2-1 Since the comparison reveals that the rate of the round robin3-2 (updated to 19 Mbps) is lower than the rate of the round robin 3-1(12 Mbps), the round robin of the lowest rate in the information of theround robin 2-1 is not changed.

Further, the rate updated in step S11 is compared with the rate of 27Mbps of the round robin 3-3 which has the second lowest rate among theround robins subordinate to the round robin 2-1. Since the rate of theround robin 3-2 (updated to 19 Mbps) is lower than the rate of the roundrobin 3-3 (27 Mbps), the round robin of the second lowest rate isupdated to the round robin 3-2. Further, in the information of the roundrobin 2-1, the rate is updated to 58 Mbps by subtraction of the rate of20 Mbps of the queue 42-1 from the cell rate of 78 Mbps at present.

Thereafter, it is discriminated whether or not the round robin in theimmediately higher order stage to the round robin whose information hasbeen updated is the highest order stage round robin (step S13 of FIG.8). If the round robin in the immediately higher order stage is not thehighest order stage round robin, then the processing returns to stepS12, but if the round robin in the immediately higher order stage is thehighest order stage round robin, then the processing advances to stepS14.

In this instance, since the round robin 1 in the immediately higherorder stage to the round robin 2-1 whose information has been updated isthe highest order stage round robin, the information of the round robin1 is updated (step S14 of FIG. 8). In this instance, since the roundrobin which has the lowest rate among the round robins subordinate tothe round robin 1 is the round robin 2-1 (refer to FIG. 4), updating ofthe information is not performed. Further, in the information of theround robin 1, the cell rate is updated to 405 Mbps by subtraction ofthe deleted rate of 20 Mbps from the cell rate of 425 Mbps at present.The information of the round robins 1, 2-1 to 2-4 and 3-1 to 3-3 aftersuch deletion of the connection is completed is illustrated in FIG. 6.

Addition and deletion of a connection are performed in such proceduresas described above. According to the method described above, thetraffics of the round robins 1, 2-1 to 2-4 and 3-1 to 3-3 can beaveraged comparatively simply, and even if the number of queuesincreases in the per-VC queuing, equal arbitration can be performed.

By such a multi-stage arrangement of round robins and averaging of thetraffics to the round robins as described above, even if a very greatnumber of queues are involved in “per-VC queuing”, equal arbitration canbe achieved.

Further, by the averaging of the traffics to the round robins 1, 2-1 to2-4 and 3-1 to 3-3, the advantage described above can be anticipatedalso upon congestion. Furthermore, the advantage described above can beobtained with a comparatively simple configuration without using acombination of the closed loop control of the entire apparatus and thetime wheel.

It is to be noted that, in order to further augment the equality ofoutputs of the individual queues, it is necessary to calculate rates ofall queues and re-distribute the rates to the round robins every time anew connection is added or a connection is deleted However, for the sakeof simplification of the system, the system of the present inventiondoes not employ a configuration for such calculation and re-distributionof rates.

While a preferred embodiment of the present invention has been describedusing specific terms, such description is for illustrative purposesonly, and it is to be understood that changes and variations may be madewithout departing from the spirit or scope of the following claims.

1. An apparatus comprising: groups of storage members having anassociated output rate; and a hardware-implemented arbiter circuitincluding sets of arbitration members linked in multi-stagesubordinate-superior relation to arbitrate data transfer from thestorage members, where one of the sets of the arbitration membersincludes first arbitration members to respectively connect to thestorage members of one of the groups, each first arbitration memberhaving an associated transfer rate corresponding to a sum of the outputrates associated with the storage members of the group to which thefirst arbitration member connects, where one or more other sets of thearbitration members includes arbitration members that are superior tothe first arbitration members and have an associated transfer ratecorresponding to a sum of the transfer rates associated with immediatelysubordinate arbitration members and have information identifying a rankorder of a first one of the immediately subordinate arbitration members,having a lowest associated transfer rate among transfer rates of theimmediately subordinate arbitration members, and a second one of theimmediately subordinate arbitration members, having a lowest associatedtransfer rates among the transfer rates of immediately subordinatearbitration members, and where the superior arbitration memberssuccessively select one of the first immediately subordinate arbitrationmembers or the second immediately subordinate arbitration member havingthe lowest associated transfer rate, rather than the other one of thefirst immediately subordinate arbitration members or the secondimmediately subordinate arbitration member not having the lowestassociated transfer rate, based on the information identifying the rankorders.
 2. The device of claim 1, where the first arbitration memberthat, is selected, is to connect to an additional storage member thathas an associated additional output rate to increase the transfer rateassociated with the selected first arbitration member by an amount ofthe associated additional output rate.
 3. The device of claim 2, whereselected superior arbitration members are to update the respectiveinformation identifying the rank orders when the rank orders are changeddue to increased respective transfer rates by the amount of theassociated additional output rate.
 4. The device of claim 1, where thefirst arbitration member, that is selected, is to disconnect from one ormore of the storage members to decrease the transfer rate associatedwith the selected first arbitration member.
 5. The device of claim 4,where the selected arbitration members are to update the respectiveinformation identifying the rank orders when the rank orders are changeddue to the decreased respective transfer rates.
 6. An arbitration methodperformed by an apparatus including a hardware-implemented arbitercircuit including sets of arbitration members linked in multi-stagesubordinate-superior relation to arbitrate data transfer from storagemembers of groups of storage members having an associated output rate,the method comprising: respectively connecting first arbitration membersof one of the sets of the arbitration members, of thehardware-implemented arbiter circuit, to the storage members of one ofthe groups, each first arbitration member having an associated transferrate corresponding to a sum of the output rates associated with thestorage members of the group to which the first arbitration memberconnects, where one or more other sets of the arbitration members, ofthe hardware-implemented arbiter circuit, includes arbitration membersthat are superior to the first arbitration members and have anassociated transfer rate corresponding to a sum of the transfer ratesassociated with immediately subordinate arbitration members and haveinformation identifying a rank order of a first one of the immediatelysubordinate arbitration members, having a lowest associated transferrate among transfer rates of the immediately subordinate arbitrationmembers, and a second one of the immediately subordinate arbitrationmembers, having a lowest associated transfer rates among the transferrates of immediately subordinate arbitration members; and successivelyselecting, by the superior arbitration members, one of the firstimmediately subordinate arbitration members or the second immediatelysubordinate arbitration member having the lowest associated transferrate, rather than the other one of the first immediately subordinatearbitration members or the second immediately subordinate arbitrationmember not having the lowest associated transfer rate, based on theinformation identifying the rank orders.
 7. The arbitration method ofclaim 6, where the selected first arbitration member connects to anadditional storage member that has an associated additional output rateto increase the transfer rate associated with the selected firstarbitration member by an amount of the associated additional outputrate.
 8. The arbitration method of claim 7, where selected superiorarbitration members update the respective information identifying therank orders when the rank orders are changed due to increased respectivetransfer rates by the amount of the associated additional output rate.9. The arbitration method of claim 6, where the selected firstarbitration member disconnects from one or more of the storage membersto decrease the transfer rate associated with the selected firstarbitration member.
 10. The arbitration method of claim 9, where theselected arbitration members update the respective informationidentifying the rank orders when the rank orders are changed due to thedecreased respective transfer rates.
 11. The arbitration method of claim6, further comprising: determining whether a state of congestion existsin the arbiter circuit, where the successively selecting is performedupon a determination that the state of congestion exists.
 12. Thearbitration method of claim 6, further comprising: anticipatingcongestion in the arbiter circuit, where the successively selectingbegins after the anticipating.